りおんクロニクル


C# × SQLite|INSERT / UPDATE / DELETE / SELECT 完全ガイド【2026年版】

Home【2026年版】C# / .NET入門と実践ガイド|基礎・業務アプリ開発・SQLite連携まで体系的に解説

C#でSQLiteを使うときに必ず必要になるのが、CRUD(Create / Read / Update / Delete)。 この記事では、最も安定して使える Microsoft.Data.Sqlite を使って、 最小コードで動く実務向けのCRUD をまとめています。

この記事でわかること
・SQLite × C# の基本構造
・INSERT / UPDATE / DELETE / SELECT の最小コード
・パラメータの安全な使い方
・DataTableでの読み込み方法
・業務アプリで使うベストプラクティス

1. 必要なNuGetパッケージ

この2つだけでOK。 .NET 10 でも最も安定して動く組み合わせです。

2. 接続の基本コード

using Microsoft.Data.Sqlite;

var connectionString = "Data Source=sample.db";

using var connection = new SqliteConnection(connectionString);
connection.Open();

3. INSERT(データ追加)

var sql = "INSERT INTO Users (Name, Age) VALUES (@name, @age)";

using var command = new SqliteCommand(sql, connection);
command.Parameters.AddWithValue("@name", "Taro");
command.Parameters.AddWithValue("@age", 25);

command.ExecuteNonQuery();

ポイント

4. SELECT(データ取得)

var sql = "SELECT Id, Name, Age FROM Users";

using var command = new SqliteCommand(sql, connection);
using var reader = command.ExecuteReader();

while (reader.Read())
{
    var id = reader.GetInt32(0);
    var name = reader.GetString(1);
    var age = reader.IsDBNull(2) ? (int?)null : reader.GetInt32(2);

    Console.WriteLine($"{id}, {name}, {age}");
}

ポイント

5. UPDATE(データ更新)

var sql = "UPDATE Users SET Age = @age WHERE Id = @id";

using var command = new SqliteCommand(sql, connection);
command.Parameters.AddWithValue("@age", 30);
command.Parameters.AddWithValue("@id", 1);

command.ExecuteNonQuery();

ポイント

6. DELETE(データ削除)

var sql = "DELETE FROM Users WHERE Id = @id";

using var command = new SqliteCommand(sql, connection);
command.Parameters.AddWithValue("@id", 1);

command.ExecuteNonQuery();

ポイント

7. DataTableで読み込みたい場合(WinForms/WPF向け)

var dt = new DataTable();

using var command = new SqliteCommand("SELECT * FROM Users", connection);
using var reader = command.ExecuteReader();

dt.Load(reader);

// DataGridView.DataSource = dt; などに使える

8. CRUDまとめ(最小コード一覧)

// INSERT
INSERT INTO Users (Name, Age) VALUES (@name, @age);

// SELECT
SELECT Id, Name, Age FROM Users;

// UPDATE
UPDATE Users SET Age = @age WHERE Id = @id;

// DELETE
DELETE FROM Users WHERE Id = @id;

9. 業務アプリでのベストプラクティス

まとめ:C# × SQLite のCRUDはシンプルで強力

C#で軽量DBを使うなら、SQLiteは最も扱いやすく、 小規模〜中規模アプリの最適解です。 この記事をベースに、あなたのアプリに組み込んでみてください。

前のページ  次のページ